技術問答
技術文章
iT 徵才
Tag
聊天室
2025 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2025 iThome 鐵人賽
DAY
1
0
自我挑戰組
用java解Leetcode
系列 第
1
篇
用java解Leetcode Day1
17th鐵人賽
Frank8989
2025-09-15 15:15:17
44 瀏覽
分享至
Two Sum
以上兩張圖片,一張是我的程式碼,另一張是我解題成功的證明,之後不在贅述。
這題有兩個前提,一個是「恰好只有一個解」,這意味這只需要找到一組解即可,不需要擔心會有其他解,另一個是「不能重複使用同一元素」,這意味著不能使用同一索引位置的數字兩次或以上。
解題思路是先創造一個空的雜湊表(HashMap),用來儲存我們已經遍歷過的數字。HashMap的鍵(key)儲存數字本身,值(value)儲存這個數字在陣列中的索引。
接著就要遍歷nums陣列,對於陣列中每個數字nums[i],首先要計算出目標差值(complement = target – nums[i]),再來要檢查這個complement是否已經存在於HashMap中,如果complement存在,就表示已經找到了這對數字,接著只要回傳complement和與它對應的nums[i]的索引就行了,但如果不存在,就將nums[i]和它的索引i存入HashMap中,以便後續的數字能夠檢查它。
雖然已經確定這題目有解,但為了培養良好的習慣,可以加上我最後一段程式碼,可以在找不到解的情況時,回傳一個空陣列。
留言
追蹤
檢舉
下一篇
用java解Leetcode Day2
系列文
用java解Leetcode
共
24
篇
目錄
RSS系列文
訂閱系列文
0
人訂閱
20
用java解Leetcode Day20
21
用java解Leetcode Day21
22
用java解Leetcode 22
23
用java解Leetcode Day23
24
用java解Leetcode Day24
完整目錄
熱門推薦
{{ item.subject }}
{{ item.channelVendor }}
|
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
902
組
團體組數
37
組
累計文章數
17251
篇
完賽人數
204
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
17th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
linux
windows server
css
react
熱門問題
如何控制被我走私的Web Shell?
發文一直被判定廣告或垃圾訊息
excel web adi 巨集,出現網頁指令碼錯誤
opencart4.1套件更新
dreambooth報錯:hidden_size
關於powershell dns policy 同步問題
Zoom分享時黑屏
熱門回答
關於powershell dns policy 同步問題
熱門文章
[為你自己學 n8n] 第 18 天,我的 Line 機器人會記帳!(下)
第18天,Cloudflare Gateway 裝置網路守門員 / 蚵仔之家 | 30天板橋湳雅夜市
[為你自己學 n8n] 第 19 天,n8n 名片王(上)
第18天,實作非對稱加密 / 光興腿庫 好吃(新北三重)|30天滷肉飯
08-02:AI輔助演說與即時翻譯
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}